import Actions from './actions';
import {CustomerBaseInfoResponse} from 'api/CustomerBaseController';
export interface IMainReducer {
  isReady: boolean;
  isLoading?: boolean;
  isLogin?: boolean;
  visible?: boolean;
  orderCount: {
    waitPay: number;
    waitDeliver: number;
    waitReceiving: number;
    waitEvaluate: number;
    refund: number;
  };
  customer: CustomerBaseInfoResponse;
  pointsAvailable: number; //积分值
  totalSignDays?: number; //累计签到天数
  isAquamarineMember: boolean; //是否蓝晶会员标志 false：否，true：是
  isCrystalMember: boolean; //是否赤晶会员标志 false：否，true：是
  memberDays: number; //已成为会员多少天-会员时才会展示，非会员无需展示
  endTime: string; //会员有效期至
  dualMembershipCardNumber: string; //双会员卡号
  aquamarineMembershipCardNumber: string; //蓝晶会员卡号
  crystalMembershipCardNumber: string; //赤晶会员卡号
  blacklistModel: boolean; //黑名单弹框
  rankBadgeImg: string; //等级徽章
}

export type ActionType = ReturnType<typeof Actions>;
export type IAllReducerProps = {
  main: IMainReducer;

  [name: string]: any;
};

//默认是全部的属性,可以自定义
export type IProps = IAllReducerProps & ActionType;

export type IOrderProps = {};
export type IOrderState = {
  channel: string;
  secret: string;
  sign: string;
  phone: string;
  url: string;
  isShow: boolean;
};

export type IToolsBoxProps = {};
export type IToolsBoxState = {};

export type ICenterBoxProps = {};
export type ICenterBoxState = {};

//create by moon https://github.com/creasy2010/moon
